home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / cgazv5n5.arc / COLLECT.CPP next >
C/C++ Source or Header  |  1991-09-23  |  1KB  |  43 lines

  1.   //--- COLLECT.CPP ---------------------- Listing 2 -----------
  2.   // Testing the record and its container class
  3.   // See Listing 1 for copyright terms.
  4.   //------------------------------------------------------------
  5.  
  6.   #include "collect.h"
  7.  
  8.   class TestArray : public recordArray {
  9.   public:
  10.     TestArray() : recordArray() {}
  11.     TestArray(TestArray& rv) : recordArray(rv) {}
  12.  
  13.     void show ( char * msg ) {
  14.       puts ( msg );
  15.       for ( int i = 0; i < arraySize(); i++ )
  16.         if ( null( i ) )
  17.           puts( "null element" );
  18.         else
  19.           printf( "%s: %s\n", rec( i ).Name(), 
  20.                 rec( i ).Description() );
  21.     }
  22.   };
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.   main() {
  31.     TestArray a;
  32.     a.add(new record("first name", "first description"));
  33.     a.add(new record("second name", "second description"));
  34.     a.add(new record("third name", "third description"));
  35.     a.add(new record("fourth name", "fourth description"));
  36.     a.show("first show");
  37.     a.destroy(0);  // leaves a null spot at location zero
  38.     a.show("a.show()");  // look to see the null spot
  39.     a.add(new record("fifth name", "fifth business"));
  40.     TestArray b(a);  // make a new one to eliminate the null spots
  41.     b.show("b.show()");
  42.   }
  43.